本发明提供一种图像形成装置及该图像形成装置的控制方法。所述图像形成装置具有对在执行应用中使用的资源使用量的限制,该图像形成装置包括:安装单元,其被构造为将包括多个应用模块的复合应用安装为一个应用;显示单元,其被构造为当启动由所述安装单元安装的所述复合应用时,如果由于所述资源使用量的限制而不能启动所述复合应用中包含的所述多个应用模块,则启动所述多个应用模块中的预定应用模块,并在所述图像形成装置的显示部上显示对应于所启动的预定应用模块的符号;以及图像形成单元,其被构造为如果选择由所述显示单元显示的所述符号以指示图像处理,则利用对应于所述符号的应用模块来执行所述图像处理。
1.一种图像形成装置,其对在执行应用中使用的资源使用量具有限制,该图像形成装置包括:安装单元,其被构造为将包括多个应用模块的复合应用安装为一个应用;显示单元,其被构造为当启动由所述安装单元安装的所述复合应用时,如果由于所述资源使用量的限制而不能启动所述复合应用中包含的所述多个应用模块,则启动所述多个应用模块中的预定应用模块,并在所述图像形成装置的显示部上显示对应于所启动的预定应用模块的符号;以及图像形成单元,其被构造为如果选择由所述显示单元显示的所述符号以指示图像处理,则利用对应于所述符号的应用模块来执行所述图像处理,其中,所述多个应用模块包括共同应用模块和个别应用模块,所述个别应用模块被用来与经由网络连接到所述图像形成装置的系统通信,所述共同应用模块被用来显示代表所述个别应用模块与所述系统通信的信息,并且所述个别应用模块利用所述共同应用模块向用户显示代表与所述系统进行通信的信息,并且,其中,如果由于所述资源使用量的限制而不能启动所述复合应用中包含的所述多个应用模块,则所述显示单元启动所述共同应用模块和所述个别应用模块中包含的预定个别应用子模块二者,并显示对应于所启动的预定个别应用子模块的符号。
2.根据权利要求1所述的图像形成装置,其中,当由于所述资源使用量的限制而不能启动所述共同应用模块和所述个别应用模块中包含的所述预定个别应用子模块二者时,所述显示单元启动所述共同应用模块,而不启动所述预定个别应用子模块。
3.根据权利要求2所述的图像形成装置,其中,所述复合应用是在第二执行环境上操作的应用,所述第二执行环境由在第一执行环境上操作的虚拟机实现。
4.一种图像形成装置的控制方法,所述图像形成装置对在所述图像形成装置上操作的应用的资源使用量具有限制,所述控制方法包括以下步骤:将包括具有类似功能的多个应用模块的复合应用安装为一个应用;以及当启动所安装的复合应用时,如果由于所述资源使用量的限制而不能启动所述复合应用中包含的所述多个应用模块,则启动所述多个应用模块的一部分,其中,所述多个应用模块包括共同应用模块和个别应用模块,所述个别应用模块被用来与经由网络连接到所述图像形成装置的系统通信,所述共同应用模块被用来显示代表所述个别应用模块与所述系统通信的信息,并且所述个别应用模块利用所述共同应用模块向用户显示代表与所述系统进行通信的信息,并且,其中,如果由于所述资源使用量的限制而不能启动所述复合应用中包含的所述多个应用模块,则启动所述共同应用模块和所述个别应用模块中包含的预定个别应用子模块二者,并显示对应于所启动的预定个别应用子模块的符号。
技术领域本发明涉及下载并执行外部应用的图像形成装置及该图像形成装置的控制方法。
背景技术已知在图像形成装置的实时操作系统(OS)上构建嵌入式系统的执行环境(Java
TM),从外部下载能够控制图像形成装置的应用,并且在所构建的执行环境上执行应用。通过构建该执行环境,用户能够向图像形成装置添加应用。与个人计算机(PC)不同,在图像形成装置上的执行环境中,多个应用需要在有限的资源中共存。与PC相比较,图像形成装置具有诸如机载的中央处理单元(CPU)和存储器等的较小硬件资源。考虑到打印处理的可利用性,需要对应用的资源使用量施加限制,以确保实时图像处理。例如,用于使用图像形成装置的显示单元的应用具有限制。具体地,对调用应用的数量给定上限。日本专利特开2009-283002号公报公开了一种图像形成装置,该图像形成装置在应用的资源使用量上存在限制。将应用所需的资源量与正被启动的应用使用的资源量一起相加。针对资源的总量是否已到达预设的上限进行确定。基于确定结果,图像形成装置控制应用的启动处理。因此,当在用于启动应用的受限资源(内存、存储器、用户接口(UI)使用的上限)中没有足够空间时,实时图像处理所需的这种图像形成装置在所述应用的启动上存在限制。传统上,假设一个应用包括一个应用模块。然而,一个应用(下文称为“复合应用”)可以包括多个应用模块。传统上,对这种格式的应用如何被资源存在限制的图像形成装置启动并未作考虑。
发明内容本发明提供一种具有资源使用量的限制的图像形成装置,以及一种能够充分启动复合应用的图像形成装置。根据本发明的一方面,提供一种图像形成装置,其具有对在执行应用中使用的资源使用量的限制,该图像形成装置包括:安装单元,其被构造为将包括具有类似功能的多个应用模块的复合应用安装为一个应用;以及启动单元,其被构造为当启动由所述安装单元安装的所述复合应用时,如果由于所述资源使用量的限制而不能启动所述复合应用中包含的所述多个应用模块,则启动所述多个应用模块的一部分。根据以下参照附图对示例性实施例的详细描述,本发明的其他特征和方面将变得清楚。
附图说明被并入说明书中并构成说明书的一部分的附图,例示了本发明的示例性实施例、特征和方面,并与文字描述一起,用于解释本发明的原理。图1是根据本发明的示例性实施例的图像形成装置的框图。图2是根据本发明的示例性实施例的图像形成装置的软件框图。图3是例示根据本发明的示例性实施例的操作单元的触摸屏上显示的显示画面的图。图4是根据本发明的示例性实施例的应用的基本框图。图5是例示根据本发明的示例性实施例的外部服务A连接应用单元显示的UI的图。图6是例示根据本发明的示例性实施例的发送处理应用单元显示的UI的图。图7A是例示根据本发明的示例性实施例的应用中包含的应用模块的启动优先级顺序的图,以及图7B是例示用于提供根据本发明的示例性实施例的应用中包含的应用模块的功能的最低限必需应用模块的组合的图。图8是例示根据本发明的示例性实施例的应用的启动处理的流程图。图9是例示根据本发明的示例性实施例的、用于管理UI应用的启动状态的管理表的图。图10是例示根据本发明的示例性实施例的、通过能够针对各启动失败的UI应用执行重新初始化处理的小服务程序(servlet)应用所显示的UI的图。图11是例示根据本发明的示例性实施例的基本点(mainxa0point)的图。图12A是例示Casexa01的符号显示的图,图12B是例示Casexa02的符号显示的图,以及图12C是例示Casexa03和Casexa04的符号显示的图。
具体实施方式以下将参照附图详细描述本发明的各种示例性实施例、特征及方面。在根据本发明的示例性实施例的假设系统(未例示)中,图像形成装置和两个外部服务器经由互联网相互连接。在本示例性实施例中,外部服务器的数量是2,尽管也可以选择性地使用其他数量。各外部服务器可以是包括多个服务器的服务器系统。图1是例示根据本示例性实施例的图像形成装置的内部结构的框图。图1所示的图像形成装置包括控制器单元100、操作单元112、扫描器单元123以及打印机单元125。控制器单元100控制图像形成装置的各单元。操作单元112包括用于输入数字的数字小键盘、包括用于执行处理的开始键的硬键,以及液晶屏。操作单元112提供了用户用以操作图像形成装置的用户界面。触摸(按下)图标或按钮(或硬键)使得用户能够向图像形成装置输入各种设置或信息。图标或按钮代表在操作单元112的触摸屏上显示的各设置项。操作单元112对应于显示单元。扫描器单元123执行用于读取文档、并由所读取的文档信息生成图像数据的图像处理。打印机单元125输送记录纸,在所述记录纸上将图像数据形成为可视图像,并打印所形成的图像。控制器单元100经由总线122连接到扫描器单元123,并且经由总线124连接到打印机单元125。控制器单元100向扫描器单元123和打印机单元125发送用于图像处理的指令。控制器单元100经由局域网(LAN)113、广域网(WAN)114及无线线路115连接到其他单元。控制器单元100还控制图像信息和设备信息的输入/输出。中央处理单元(CPU)101是用于控制整个系统的单元。随机存取存储器(RAM)102是用于CPUxa0101操作的系统工作存储器,并且是用于临时存储图像数据的单元。只读存储器(ROM)103是用于存储数据的单元,并且是启动ROM。ROMxa0103存储用于系统的启动程序。硬盘驱动器(HDD)104是用于存储系统软件、图像数据、由以下将描述的通信单元111保持的关于整个无线通信的信息(无线通信的规格)。HDDxa0104还存储如稍后所述的实时OSxa0201和虚拟机205上操作的应用。图像形成装置通过安装实现期望功能的应用,可以具有更多的功能。通过安装应用,用于在图像形成装置上操作各种功能的应用程序,能够被存储在RAMxa0102以及/或HDDxa0104中。如以下将描述的,当在图像形成装置中安装应用时,应用被安装在控制图像形成装置的各种功能的OS中操作的虚拟环境中,而不是直接安装在OS中。操作单元I/Fxa0106是面向作为用户界面(UI)的操作单元112的界面单元,并且向操作单元112输出要在操作单元112上显示的数据。操作单元I/Fxa0106用于将用户从操作单元112输入的信息发送到CPUxa0101。网络单元109连接到LANxa0113,并且经由网络从外部发送和接收信息。调制解调器(MODEM)110连接到广域网(WAN)114,并输入和输出信息。通信单元111经由天线(未示出)连接到无线网络(WIRELESS)115,并输入和输出信息。通信单元111能够进行各种无线通信。上述各单元被布置在系统总线107上。图像总线接口(I/F)105连接到系统总线107和用于以高速传送图像数据的图像总线108,并且是用于转换数据结构的总线桥。图像总线108被定义作为外围部件互联(PCI)总线,或者通过IEEExa01394来定义。在图像总线108上布置的单元中,光栅图像处理器(RIP)116将页面描述语言(PDL)代码光栅化为位图图像。设备I/F单元117将扫描器单元123或打印机单元125连接到控制器单元100,以进行图像数据的同步/异步转换。扫描器图像处理单元118校正、处理和编辑输入的图像数据。打印机图像处理单元119根据打印机单元125校正打印输出的图像数据,并且转换打印输出的图像数据的分辨率。图像旋转单元120旋转图像数据。图像处理单元121对图像数据执行压缩/解压缩处理(联合图像专家组(JPEG)、联合二值图像专家组(JBIG)、改进的二维压缩编码(MMR,Modifiedxa0Modifiedxa0READ)、改进霍夫曼(MH)),或者执行格式转换处理(便携式文档格式(PDF)、标签图像文件格式(TIFF)、光学字符识别(OCR)、加密)。以下将参照图2来描述图1所示的图像形成装置的软件结构。图2所示的软件结构通过将图像形成装置的HDDxa0104中存储的用于实现各种功能的程序载入RAMxa0102、并且通过CPUxa0101执行程序来实现。OSxa0201是用于控制整个图像形成装置的第一执行环境,并且实时地向能够控制图像形成装置的各种功能的各个单元或CPU发送指令。OS201包括库组。该库组能够精密地控制包括复印机的选项单元以及扩展卡的各功能。OSxa0201包括用于向其上操作的应用提供接口命令的模块组。控制器控制单元202在OSxa0201上操作,并且包括用于控制扫描器单元123和打印机单元125的模块。应用编程接口(API)203响应于来自在OSxa0201上操作的应用的指令,来实现用于访问控制器控制单元202的处理以及用于经由网络单元109向连接到网络的单元发送控制命令的功能。应用204在OSxa0201上操作,并且经由APIxa0203请求控制器控制单元202进行各种处理。虚拟机205是用于执行特殊应用的第二执行环境,并且通过例如Java(注册商标)虚拟机来实现。APIxa0206提供如下的功能,通过该功能作为第二执行环境的虚拟机205上的应用,对在作为第一执行环境的实时OS201上操作的控制器控制单元202进行访问。具体地,APIxa0206包括用于响应于来自虚拟机205上操作的应用的调用、提供各种功能的模块。API206实现了用于调用APIxa0203的转换模块的功能,以及用于经由网络单元109向连接至网络的单元发送控制命令的功能。框架(f
ramework)模块207具有用于一般地控制第二执行环境205上的应用的功能。管理应用209管理在第二执行环境205上操作的应用。管理应用209与框架模块207协作地提供用于对应用210和复合应用212进行下载、上传、删除、无效化及安装的功能。管理应用209和应用210在第二执行环境205上操作,并且经由API206请求控制器控制单元202进行各种处理。资源管理单元211管理由作为第二执行环境的虚拟机205使用的资源,并且在实现第一执行环境的实时OSxa0201上操作。当在实现第二执行环境的虚拟机205、APIxa0206、框架207以及OSxa0205上操作的应用使用资源时,资源管理单元211限制针对各相应模块的资源使用量。具体地,以使得各个模块不能使用大于预定量的资源的方式,来限制图像形成装置的资源使用量。例如,当将虚拟机205上操作的应用加载到RAMxa0102时,如果预设数量的调用应用已被加载到存储器中,则限制应用的加载。在另一示例中,因为用于CPU执行加载的应用的资源不足,所以尽管应用被加载到RAMxa0102中,但是应用的执行可能会被限制。在本示例性实施例中,调用应用的预设数量暗含了对虚拟机205上操作的应用施加的限制,并且以20为数量的示例。这样,如果在虚拟机205上操作的20个应用已经被加载到RAMxa0102中,则无法启动在虚拟机205上驻留的更多应用。图3是例示在操作单元112的触摸屏上显示的显示画面的示例的图。如图3所示的首画面300所示,在操作单元112的触摸屏上显示的显示画面包括共同区域301和功能区域302。共同区域301显示显示画面的共同内容,而功能区域302显示显示画面的不同内容。当通过开启装置而使图像形成装置可执行时,首先在图像形成装置的显示单元上显示首画面。共同区域301包括标题栏303和菜单按钮304。标题栏303用于描述所显示的内容,而菜单按钮304用于显示针对与当前显示的画面相对应的结构限制和功能设置的菜单。功能区域302包括用于切换至与“复印”和“发送”的应用相对应的画面的显示按钮。本示例性实施例中的应用按钮包括“复印”应用按钮305、“发送”应用按钮306、“箱”应用按钮307以及用于外部服务器的“发送”应用按钮308。与除用于外部服务器的“发送”应用按钮308以外的任意按钮相对应的应用,为在第一执行环境上操作的应用。当新应用被安装在图像形成装置中、加载到RAMxa0102中并正常启动时,与该新应用相对应的按钮被显示在首画面300上的功能区域302中。在图像形成装置被启动时,各应用被加载到RAMxa0102中。在功能区域302中登记的按钮,对应于在OSxa0201上操作的应用和在虚拟机205上操作的应用二者。图4是根据本示例性实施例的复合应用212的基本框图。如图4所示,复合应用212包括多个应用模块。复合应用212从图像形成装置连接到经由网络连接的外部服务器,并且实现用于向外部服务器发送扫描图像的功能。复合应用212还实现用于从外部服务器接收图像数据的功能。复合应用212包括3个应用模块:发送处理应用单元401、外部服务A连接应用单元402以及外部服务B连接应用单元403。应用模块是用于提供不同UI的应用。应用模块被打包,并且各独立的模块组对应于各应用模块。模块被打包并设置为用于实现特殊功能的模块组,由此实现独立的应用结构。外部服务A连接应用单元402是用于与外部服务器A(未示出)通信的应用模块,并且在操作单元112上显示图5所示的UIxa0500。外部服务器A基于云计算环境的假设,并且提供利用云计算环境的外部服务A。UIxa0500中的附图标记501代表用于指定扫描倍率的项,附图标记502代表用于指定分辨率的项,并且附图标记503代表用于指定浓度的项。附图标记504代表用于执行发送的按钮。当用户按下用于向外部服务A的发送的“发送”按钮504时,文档被扫描,并且与扫描文档相对应的图像数据被发送到外部服务器A。外部服务A连接应用单元402包括用于与外部服务A通信的通信模块,并且通过与外部服务器A的通信来发送扫描图像。这时,外部服务A连接应用单元402调用发送处理应用单元401。所调用的发送处理应用单元401在显示单元上显示图6所示的UIxa0600,以向用户通知正在发送扫描文档图像。更具体地说,复合应用212启动外部服务A连接应用单元402和发送处理应用单元401的两个应用模块,执行图像处理,并且执行用于将图像处理的结果发送到外部服务器的处理。如上所述,外部服务A连接应用单元402在从外部服务器接收到图像数据时,能够针对图像数据执行图像处理并打印处理后的图像。在这种情况下,外部服务A连接应用单元402显示与图5所示的UI不同的用于打印的UI(未例示)。外部服务B连接应用单元403是用于与外部服务器B(未例示)通信的应用模块,并且显示用于向外部服务器B发送扫描图像的UI(未例示)。外部服务器B基于云计算环境的假设,并且被提供作为利用云计算环境的外部服务B。外部服务A与外部服务B之间的差别为例如存储数据格式的种类不同。与外部服务A不同,外部服务B能够存储多种数据格式。这样,通过外部服务B连接应用单元403显示的UI除了包括图5所示的项外,还包括用于选择数据格式的项。外部服务B连接应用单元403还能够从外部服务器接收图像数据,对所述图像数据执行图像处理,并打印处理后的图像。外部服务B连接应用单元403包括用于与外部服务B通信的通信模块,与外部服务器B通信,并发送扫描图像。这时,外部服务B连接应用单元403调用发送处理应用单元401。所调用的发送处理应用单元401显示代表正在发送扫描文档图像的UIxa0600,如图6所示。与应用单元402一样,外部服务B连接应用单元403是与发送处理应用单元401协作地进行操作的应用模块。以这种方式,用于与经由网络连接的系统通信的应用模块称为个别应用模块,而在个别应用模块之间共同使用的模块称为共同应用模块。复合应用212包括个别应用模块和共同应用模块。如上所述,各个别应用模块具有用于显示UI的功能。然而,根据连接的外部服务器提供的外部服务来显示不同的UI。个别应用模块的通信模块与各外部服务器通信,以提供各外部服务,由此利用与各外部服务器对应的通信协议来进行通信。提供外部服务A和B的这两个外部服务器基于云计算环境。这两个外部服务器具有信息处理单元的已知结构,并且不仅提供用于响应于外部请求来存储数据的服务,而且提供用于将存储的数据发送到请求源的服务。图7A是例示复合应用212中包含的应用模块的启动优先级顺序的图。如利用附图标记701、702和703所例示的,按照发送处理应用单元401、外部服务A连接应用单元402和外部服务B连接应用单元403的顺序来设置启动的优先级顺序。发送处理应用单元401具有最高优先级的理由在于,其是由多个应用模块共同使用的共同应用模块。共同应用模块具有比个别应用模块高的优先级。稍后将讨论该理由。外部服务A连接应用单元402具有第二高优先级的理由是基于用户使用外部服务A比使用外部服务B更频繁的假设。该优先级顺序可以被应用静态地保持。然而,可以改变全部应用模块的启动优先级顺序。图7B例示了用于提供复合应用212中包含的个别应用的功能的必需应用模块的组合。如利用图7B中的附图标记704所例示的,为了提供功能1,发送处理应用单元401和外部服务A连接应用单元402均是必需的。如利用附图标记705所例示的,为了提供功能2,发送处理应用单元401和外部服务B连接应用单元403是必需的。从图7B可知,为了用户接收由个别应用模块提供的功能,共同应用模块是必需的。共同应用模块具有用于实现各个别应用模块所提供的服务所需的功能。开发者考虑到开发工时而独立地开发共同使用的模块。该考虑基于以下几点作出。具体地,当各个别应用模块具有嵌入的共同应用模块的功能时,开发工时增加,并且模块的代码变得过大。即,对于利用受限数量的资源来操作的图像形成装置,过大的代码影响资源。图8是例示根据本示例性实施例的用于启动复合应用212的处理的流程图。在步骤S801中,复合应用212开始启动处理。在步骤S802中,复合应用212确认启动了具有优先级“1”的发送处理应用单元401。在这种情况下,启动的确认暗示,资源管理单元211确认并未限制应用模块的启动。当在步骤S802中未成功启动发送处理应用单元401时,然后在步骤S803中,复合应用212在不初始化任何应用模块的情况下启动应用,并结束启动处理。在这种情况下,无初始化地启动暗示了在RAMxa0102中加载了特殊模块部分的特殊状态。该模块部分用于实现应用模块中包含的部分功能。无须说,在这种状态下,用户无法获得应用模块提供的功能。当在步骤S802中成功启动发送处理应用单元401时,处理进入步骤S804。在步骤S804中,复合应用212确认启动了具有第二高优先级的外部服务A连接应用单元402。在步骤S804中,当外部服务A连接应用单元402未能被启动时,复合应用212在步骤S805中仅初始化和启动发送处理应用单元401。在这时,复合应用212在不登记首画面300中的任何按钮的情况下结束启动处理。在首画面300中不登记按钮的理由在于,仅通过发送处理应用单元401不能向用户提供利用外部服务的服务。当在步骤S804中成功启动外部服务A连接应用单元402时,处理进入步骤S806。在步骤S806中,复合应用212确认具有第三高优先级的外部服务B连接应用单元403的启动。当在步骤S806中不能成功启动外部服务B连接应用单元403时,复合应用212在步骤S807中初始化并启动发送处理应用单元401和外部服务A连接应用单元402。这时,复合应用212在首画面300中登记用于使用外部服务A的按钮。该按钮对应于外部服务A连接应用单元402。当在步骤S806中成功启动了外部服务B连接应用单元403时,复合应用212在步骤S808中初始化并启动以下三个应用模块。这三个应用模块包括发送处理应用单元401、外部服务A连接应用单元402、及外部服务B连接应用单元402。复合应用212在首画面300中登记用于使用外部服务A的按钮以及用于使用外部服务B的按钮,并且结束启动处理。图9例示了用于管理在图8中启动的各应用模块的启动状态的管理表。该管理表被管理应用209管理。在图9中,发送处理应用单元401和外部服务A连接应用单元402被成功启动,同时外部服务B连接应用单元403处于停止状态。图10例示了针对图8中启动的应用模块当中的、能够指示用于启动失败的应用模块的重启动处理的小服务程序(servlet)应用的UI画面。在应用管理画面1100中,“开始”按钮1103有效,这是因为外部服务A连接应用1101处于停止状态。由于外部服务B连接应用1102处于“开始”状态,因此“停止”按钮1104有效。在这种状态下,如果“开始”按钮被按下,则相应的应用模块被初始化并启动。另一方面,如果“停止”按钮被按下,则相应的应用模块停止。利用在虚拟机205上操作的称为小服务程序应用(未例示)的应用来生成该画面。小服务程序应用响应于外部画面请求生成图10所示的画面,并向外部请求源提供所生成的画面。在图10中,仅显示复合应用212。然而,可以显示在虚拟机205上操作的任何其他应用。在这种情况下,可以指示选择和停止在虚拟机205上操作的其他应用,由此启动复合应用212。相应地,已经对根据本示例性实施例的复合应用的启动进行了描述。最终,将参照图11以及图12A至图12C来论述本示例性实施例的基本点。图11是例示本示例性实施例的基本点的图。图12A至图12C是例示当应用模块启动时符号(图标)的显示的图。复合应用包括多个应用模块。各应用模块实现多个功能。应用模块被分类为共同应用模块和个别应用模块。个别应用模块能够与共同应用模块协作地向用户提供基于外部服务的服务。该服务将扫描图像数据存储在外部服务器中,下载并打印存储在外部服务器中的图像数据。个别应用模块包括用于与外部服务器通信的通信模块,以及用于显示基于通信目标的外部服务的UI画面的显示模块。共同应用模块包括用于响应于来自个别应用模块的调用、显示代表正在与外部服务器进行通信的UI画面的显示模块。在能够启动复合应用的全部应用模块的Casexa01中,如图12A所示显示符号(图标)1201和1202。这些符号对应于全部启动的个别应用模块。在以下两种情况(Casexa02和Casexa03)的任一情况下,能够启动复合应用的全部应用模块的部分应用模块。具体地,第一情况为Casexa02,其中能够启动整个共同应用模块和至少一个个别应用模块。第二情况为Casexa03,其中不能启动任何一个个别应用模块,或者不能启动部分共同应用模块。在Casexa02中,启动共同应用模块和具有高优先级的个别应用模块。如图12B所示,显示符号1201。该符号1201对应于能够被启动的预定个别应用模块。在Casexa03中,启动要被启动的共同应用模块,而不启动个别应用模块。如图12C所示,不显示对应于个别应用模块的符号。在Casexa03中,为什么只启动共同应用模块的理由在于,避免被除复合应用212以外的任何应用占用。当被任何其他应用占用时,要花费更多的时间来启动复合应用212。在本示例性实施例中,与复合应用212一样,包括多个应用模块的应用具有比尚未启动的其他应用更高的启动优先级。在不能启动复合应用的任何应用模块的Casexa04中,不启动应用模块。如图12C所示,不显示对应于个别应用的符号。当按下用于使用显示单元上显示的外部服务的符号时,相应的个别应用模块显示UI。图像形成装置例如从外部服务器接收到图像数据,并且打印所接收的图像数据。此时,个别应用模块与共同应用模块协作地进行操作。因此,当在按下符号时发出各种指令的任何一种时,图像形成装置在与外部服务器的数据通信之前或之后执行图像处理。因此,根据本示例性实施例,已经对图像形成装置、该图像形成装置的控制方法、以及用于控制该图像形成装置执行该控制方法的程序处理进行了描述。根据本示例性实施例,在资源使用量存在限制的图像形成装置中,能够适当地启动复合应用。在本示例性实施例中,已经对包括共同应用模块和个别应用模块二者的复合应用进行了描述。然而,复合应用可以仅包括个别应用模块。在这种情况下,图像形成装置的资源可能受到限制。然而,本发明也可适用。在本示例性实施例中,共同应用模块和个别应用模块的各个包括最少必需模块的组。然而,共同应用模块和个别应用模块的各个可以包括任何其他模块的组。本发明的实施例还可以通过读出并执行记录在存储装置上的用于执行上述实施例的功能的计算机可执行指令的程序的系统或设备的计算机(或诸如CPU或微处理单元(MPU)的装置)、以及由系统或设备的计算机例如读出并执行记录在存储装置上的用于执行任意上述实施例的功能的程序来执行各步骤的方法来实现。鉴于此,例如可以经由网络或者从用作存储装置的各种类型的记录介质(例如计算机可读介质)向计算机提供程序。记录介质可以包括例如硬盘、随机存取存储器(RAM)、只读存储器(ROM)、分布式计算系统的存储器、光盘(诸如压缩盘(CD)、数字多功能盘(DVD)或蓝光盘(BD)
TM)、闪存装置、存储卡等的一个或多个。这种系统或装置以及存储程序的计算机可读介质被包括在本发明的范围之内。虽然参照示例性实施例对本发明进行了说明,但是应当理解,本发明不限于所公开的示例性实施例。应当对所附权利要求的范围给予最宽的解释,以使其涵盖所有这种变型、等同结构及功能。